package it.traveldream.EJB.entities;

import java.io.Serializable;
import javax.persistence.*;
import java.util.List;


/**
 * The persistent class for the alloggi database table.
 * 
 */
@Entity
@NamedQuery(name="Alloggi.findAll", query="SELECT a FROM Alloggi a")
public class Alloggi implements Serializable {
	private static final long serialVersionUID = 1L;

	@Id
	@Column(name="id_alloggio")
	private int idAlloggio;

	private int deleted;

	private String descrizione;

	//bi-directional many-to-one association to Citta
	@ManyToOne
	@JoinColumn(name="id_citta")
	private Citta citta;

	//bi-directional many-to-one association to Disponibilita
	@OneToMany(mappedBy="alloggi")
	private List<Disponibilita> disponibilitas;

	//bi-directional many-to-one association to Pacchetti
	@OneToMany(mappedBy="alloggi")
	private List<Pacchetti> pacchettis;

	public Alloggi() {
	}

	public int getIdAlloggio() {
		return this.idAlloggio;
	}

	public void setIdAlloggio(int idAlloggio) {
		this.idAlloggio = idAlloggio;
	}

	public int getDeleted() {
		return this.deleted;
	}

	public void setDeleted(int deleted) {
		this.deleted = deleted;
	}

	public String getDescrizione() {
		return this.descrizione;
	}

	public void setDescrizione(String descrizione) {
		this.descrizione = descrizione;
	}

	public Citta getCitta() {
		return this.citta;
	}

	public void setCitta(Citta citta) {
		this.citta = citta;
	}

	public List<Disponibilita> getDisponibilitas() {
		return this.disponibilitas;
	}

	public void setDisponibilitas(List<Disponibilita> disponibilitas) {
		this.disponibilitas = disponibilitas;
	}

	public Disponibilita addDisponibilita(Disponibilita disponibilita) {
		getDisponibilitas().add(disponibilita);
		disponibilita.setAlloggi(this);

		return disponibilita;
	}

	public Disponibilita removeDisponibilita(Disponibilita disponibilita) {
		getDisponibilitas().remove(disponibilita);
		disponibilita.setAlloggi(null);

		return disponibilita;
	}

	public List<Pacchetti> getPacchettis() {
		return this.pacchettis;
	}

	public void setPacchettis(List<Pacchetti> pacchettis) {
		this.pacchettis = pacchettis;
	}

	public Pacchetti addPacchetti(Pacchetti pacchetti) {
		getPacchettis().add(pacchetti);
		pacchetti.setAlloggi(this);

		return pacchetti;
	}

	public Pacchetti removePacchetti(Pacchetti pacchetti) {
		getPacchettis().remove(pacchetti);
		pacchetti.setAlloggi(null);

		return pacchetti;
	}

}